#define _CRT_SECURE_NO_WARNINGS 1

#include<vector>
#include<list>
#include<queue>
#include<iostream>
#include<algorithm>

using namespace std;
#include"Priority_queue.h"

void test_pq1()
{
	int arr[] = { 5,2,6,7,8,9,4,2,3, };
	priority_queue<int, vector<int>, greater<int>> pv1(arr, arr + sizeof(arr) / sizeof(int));
	//vector<int> v1({ 1,4,6,7,5,3,12,4 });
	//priority_queue<int, vector<int>, greater<int>> pv1(v1.begin(),v1.end());
	while (pv1.size())
	{
		cout << pv1.top() << ' ';
		pv1.pop();
	}
	cout << endl;
}

void test_pq2()
{
	int arr[] = { 5,2,6,7,8,9,4,2,3, };
	bit::priority_queue<int, vector<int>, bit::Greater<int>> pv1(arr, arr + sizeof(arr) / sizeof(int));
	//pv1.push(2);
	//pv1.push(3);
	//pv1.push(1);
	//pv1.push(6);
	//pv1.push(8);
	while (pv1.size())
	{
		cout << pv1.top() << ' ';
		pv1.pop();
	}
	cout << endl;
}


int main()
{
	test_pq1();
	test_pq2();
	return 0;
}